feat: remove linting rules for composite types#2658
Conversation
|
Caution Review failedPull request was closed or merged during review WalkthroughRemoved the Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related PRs
✨ Finishing Touches📝 Generate docstrings
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #2658 +/- ##
===========================================
+ Coverage 41.37% 89.54% +48.16%
===========================================
Files 783 20 -763
Lines 111952 4360 -107592
Branches 8573 1199 -7374
===========================================
- Hits 46325 3904 -42421
+ Misses 65264 456 -64808
+ Partials 363 0 -363
🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@protographic/src/sdl-validation-visitor.ts`:
- Line 146: The change removed all `@requires` validation by replacing the
lintingRules array; restore a minimal requires validator rather than dropping it
entirely: ensure this.lintingRules includes a requiresRule (or reintroduce a
requiresRule function) alongside objectTypeRule, listTypeRule, providesRule, and
resolverContextRule, where requiresRule enforces `@requires` syntax and dependency
integrity but does NOT block non-composite types—only remove the
abstract/composite-type restriction within requiresRule's logic so it validates
field presence and correct referenced dependencies without forbidding valid
concrete `@requires` usages.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: f44bc2e6-fcd3-4c3e-8d91-fdeae307c89d
📒 Files selected for processing (3)
protographic/src/sdl-validation-visitor.tsprotographic/src/selection-set-validation-visitor.tsprotographic/tests/sdl-validation/01-basic-validation.test.ts
💤 Files with no reviewable changes (2)
- protographic/tests/sdl-validation/01-basic-validation.test.ts
- protographic/src/selection-set-validation-visitor.ts
- wgc@0.111.0 - @wundergraph/cosmo-connect@0.136.0 - controlplane@0.206.0 - @wundergraph/protographic@0.18.1 - @wundergraph/cosmo-shared@0.44.5 - studio@0.161.8
Integrate static and dynamic cost calculation into the router.
Expose the static (estimated) cost value in the modules.
Expose both costs via telemetry and response headers.
Metrics for costs should be enabled individually in the corresponding telemetry section.
Composition was reviewed in another PR and merged here.
End-to-end benchmark for a big query to measure the impact of cost control:
│ SequentialBig │ SequentialBigCostAnalysis │
│ sec/op │ sec/op vs base │
*-14 584.1µ ± 0% 586.7µ ± 0% +0.45% (p=0.000 n=40)
│ SequentialBig │ SequentialBigCostAnalysis │
│ B/s │ B/s vs base │
*-14 5.527Mi ± 0% 5.503Mi ± 0% -0.43% (p=0.000 n=40)
│ SequentialBig │ SequentialBigCostAnalysis │
│ B/op │ B/op vs base │
*-14 456.1Ki ± 0% 456.1Ki ± 0% ~ (p=0.822 n=40)
│ SequentialBig │ SequentialBigCostAnalysis │
│ allocs/op │ allocs/op vs base │
*-14 6.444k ± 0% 6.452k ± 0% +0.12% (p=0.000 n=40)
Fixes ENG-8844
Fixes ENG-8986
Co-authored-by: Aenimus <47415099+Aenimus@users.noreply.github.com>
Co-authored-by: StarpTech <deusdustin@gmail.com>
- wgc@0.112.0 - @wundergraph/composition@0.54.0 - @wundergraph/cosmo-connect@0.137.0 - controlplane@0.207.0 - @wundergraph/protographic@0.18.2 - router@0.294.0 - @wundergraph/cosmo-shared@0.45.0 - studio@0.161.9
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
|
❌ Internal Query Planner CI failed to run. |
…es-in-protographic
This PR removes the linting rules blocking the generation of message types for composite types in the field set of
@requiresSummary by CodeRabbit
New Features
Documentation
Tests
Refactor
Chores
Checklist